#ifndef TASK_H
#define TASK_H

#include <memory>
class pooltask {
public:
  virtual void proc() = 0;
  pooltask() {}
  virtual ~pooltask() {}
};

class SharedTask : public std::enable_shared_from_this<SharedTask> {
public:
  virtual void proc() = 0;
  SharedTask() {}
  virtual ~SharedTask() {}
};

#endif
